package libjdc.dc.client;

public class UserInfo {
	
	
	public enum UserStatus { AWAY , ONLINE };
	
	private User user;
	
	public UserInfo(User user){
		this.user = user;
		status = UserStatus.ONLINE;
		client = ClientType.DCpp;
	}
	
	private String nick;
	private String description;
	private String speed;
	private String email;	
	private long sharedBytes;
        private String passwd;
	
        private boolean op;
        private boolean bot;
	private UserStatus status;
	private ClientType client;
	/**
	 * @return Returns the client.
	 */
	public ClientType getClient() {
		return client;
	}
	/**
	 * @param client The client to set.
	 */
	public void setClient(ClientType client) {
		this.client = client;
	}
	/**
	 * @return Returns the description.
	 */
	public String getDescription() {
		return description;
	}
	/**
	 * @param description The description to set.
	 */
	public void setDescription(String description) {
		this.description = description;
	}
	/**
	 * @return Returns the email.
	 */
	public String getEmail() {
		return email;
	}
	/**
	 * @param email The email to set.
	 */
	public void setEmail(String email) {
		this.email = email;
	}
	/**
	 * @return Returns the nick.
	 */
	public String getNick() {
		return nick;
	}
	/**
	 * @param nick The nick to set.
	 */
	public void setNick(String nick) {
		this.nick = nick;
	}
	/**
	 * @return Returns the sharedBytes.
	 */
	public long getSharedBytes() {
		return sharedBytes;
	}
	/**
	 * @param sharedBytes The sharedBytes to set.
	 */
	public void setSharedBytes(long sharedBytes) {
		this.sharedBytes = sharedBytes;
	}
	/**
	 * @return Returns the speed.
	 */
	public String getSpeed() {
		return speed;
	}
	/**
	 * @param speed The speed to set.
	 */
	public void setSpeed(String speed) {
		this.speed = speed;
	}
	/**
	 * @return Returns the status.
	 */
	public UserStatus getStatus() {
		return status;
	}
	/**
	 * @param status The status to set.
	 */
	public void setStatus(UserStatus status) {
		this.status = status;
	}
	/**
	 * @return Returns the user.
	 */
	public User getUser() {
		return user;
	}

    public String getPasswd() {
        return passwd;
    }

    public void setPasswd(String passwd) {
        this.passwd = passwd;
    }
    public String toString(){
        return isOp()+nick+description+speed+email+sharedBytes+passwd+status+client;
    }

    public boolean isOp() {
        return op;
    }

    public void setOp(boolean op) {
        this.op = op;
    }

    public boolean isBot() {
        return bot;
    }

    public void setBot(boolean bot) {
        this.bot = bot;
    }
	
}
